﻿<?xml version="1.0" encoding="utf-8" ?>
<Recipe Name="ConfigureVSPackage" xmlns="http://schemas.microsoft.com/pag/gax-core"
                               xmlns:xi="http://www.w3.org/2001/XInclude" Bound="false">
  <DocumentationLinks>
    <Link Kind="Documentation" Caption="How to: Register a VSPackage " Url="ms-help://MS.VSCC.v80/MS.VSIPCC.v80/MS.VSSDK.v80/dv_vsintegration/html/e25e7a46-6a55-4726-8def-ca316f553d6b.htm" />
    <Link Kind="Documentation" Caption="How to: Autoload a VSPackage" Url="ms-help://MS.VSCC.v80/MS.VSIPCC.v80/MS.VSSDK.v80/dv_vsintegration/html/f4c3dcea-5051-4065-898f-601269649d92.htm" />
  </DocumentationLinks>  
  <xi:include href="../Common/CommonTypeAliases.xml"
				xpointer="xmlns(gax=http://schemas.microsoft.com/pag/gax-core) xpointer(/gax:Types)" />
  <Caption>VS Package</Caption>
  <Description>VS Package</Description>
  <HostData>
    <Icon ID="212" />
    <CommandBar Menu="VSSDKAssistProjectConfigure"/>
  </HostData>
  <Arguments>
    <xi:include href="../Common/CommonArguments.xml"
					  xpointer="xmlns(gax=http://schemas.microsoft.com/pag/gax-core) xpointer(/gax:Arguments/gax:Argument)" />
    <Argument Name="VSPackageCodeClass" Type="EnvDTE.CodeClass, EnvDTE, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" Required="true">
      <ValueProvider Type="VSSDKAssist.Recipes.Common.ValueProviders.VSPackageCodeClassValueProvider, VSSDKAssist" 
                     Stage="OnBeginRecipe" />
    </Argument>
    <Argument Name="VSHive" Required="true">
      <ValueProvider Type="VSSDKAssist.Recipes.Common.ValueProviders.AttributeValueValueProvider, VSSDKAssist"
                     CodeClassArgument="VSPackageCodeClass"
                     AttributeName="DefaultRegistryRoot" 
                     Stage="OnBeginRecipe"/>
    </Argument>
    <Argument Name="UIContextGuid" Type="System.Guid, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" Required="true">
      <Converter Type="VSSDKAssist.Recipes.Common.Converters.UIContextGuidConverter, VSSDKAssist"/>
      <ValueProvider Type="VSSDKAssist.Recipes.Common.ValueProviders.AttributeValueValueProvider, VSSDKAssist"
                     CodeClassArgument="VSPackageCodeClass"
                     AttributeName="ProvideAutoLoad"
                     Stage="OnBeginRecipe">
      </ValueProvider>      
    </Argument>
  </Arguments>
  <GatheringServiceData>
    <Wizard xmlns="http://schemas.microsoft.com/pag/gax-wizards" SchemaVersion="1.0">
      <Pages>
        <Page Type="VSSDKAssist.Recipes.ConfigureVSPackage.ConfigureVSPackageCP, VSSDKAssist"
              Height="200" Width="510">
          <Title>Specify package general properties</Title>
          <LinkTitle>Package general properties</LinkTitle>
        </Page>
      </Pages>
    </Wizard>
  </GatheringServiceData>
  <Actions CoordinatorServiceType="VSSDKAssist.Recipes.Common.Coordinators.ExecutionProgressCoordinator, VSSDKAssist">
    <!-- Add DefaultRegistryRoot attribute -->
    <Action Name="AddDefaultRegistryRootAttribute"
            Type="VSSDKAssist.Recipes.ConfigureVSPackage.AddDefaultRegistryRootAttributeAction, VSSDKAssist"
            StatusMessage="Updating vs package information"
            WriteMessageToOutputWindow="true">
      <Input Name="CodeClass" RecipeArgument="VSPackageCodeClass"/>
      <Input Name="VSHive" RecipeArgument="VSHive"/>
    </Action>
    <!-- Add ProvideAutoLoad attribute -->
    <Action Name="AddAutoLoadAttribute"
          Type="VSSDKAssist.Recipes.ConfigureVSPackage.AddAutoLoadAttributeAction, VSSDKAssist">
      <Input Name="CodeClass" RecipeArgument="VSPackageCodeClass"/>
      <Input Name="UIContextGuid" RecipeArgument="UIContextGuid"/>
    </Action>
  </Actions>
</Recipe>